home *** CD-ROM | disk | FTP | other *** search
/ Aminet 40 / Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso / Aminet / util / cdity / MRQ.lha / MRQ / Source / RCS / Install < prev    next >
Text File  |  2000-10-16  |  27KB  |  759 lines

  1. head    1.2;
  2. access;
  3. symbols;
  4. locks
  5.     msbethke:1.2; strict;
  6. comment    @# @;
  7.  
  8.  
  9. 1.2
  10. date    2000.10.15.18.18.25;    author msbethke;    state Exp;
  11. branches;
  12. next    1.1;
  13.  
  14. 1.1
  15. date    2000.01.25.16.54.29;    author msbethke;    state Exp;
  16. branches;
  17. next    ;
  18.  
  19.  
  20. desc
  21. @The MRQ installation script
  22. @
  23.  
  24.  
  25. 1.2
  26. log
  27. @New boolean option: SINGLE_IS_OK, for MRQ V2.1
  28. Some small bugfixes, mostly to do with uninitialized variables
  29. (thanks to Jens Tröger for InstallerNG that showed them!)
  30. Some typos corrected
  31. @
  32. text
  33. @;************************************************************
  34. ;* Installation script for MRQ, the MUI requester improver  *
  35. ;* $VER: MRQ_Install 2.5 (15-Oct-00)                        *
  36. ;* © 1998-2000 by Matthias Bethke <Matthias.Bethke@@gmx.net> *
  37. ;*                                                          *
  38. ;* ToDo: - uninstall option                                 *
  39. ;*       - logfile                                          *
  40. ;************************************************************
  41.  
  42. ; $Id: Install 1.1 2000/01/25 16:54:29 msbethke Exp msbethke $
  43. ;
  44. ; $Log: Install $
  45. ; Revision 1.1  2000/01/25 16:54:29  msbethke
  46. ; Initial revision
  47. ;
  48.  
  49.  
  50. (procedure F_delay                        ;debugging :)
  51.     (set #delayval 10000)
  52.     (until
  53.         (<= #delayval 0)
  54.         (set #delayval (- #delayval 1))
  55.     )
  56. )
  57.  
  58. (procedure F_expertmsg _msg
  59.     (if
  60.         (> @@user-level 1)
  61.         (message (cat "\n\n" _msg))
  62.     )
  63. )
  64.  
  65. (procedure F_expertworking _msg
  66.     (if
  67.         (> @@user-level 1)
  68.         (working "\n\n" _msg)
  69.     )
  70. )
  71.  
  72. (procedure F_GetDir _prompt _help _default
  73.     (set #Where
  74.         (askdir
  75.             (prompt _prompt)
  76.             (help _help)
  77.             (default _default)
  78.         )
  79.     )
  80. )
  81.  
  82. (procedure F_findconfig
  83.     (set #Configfile "")
  84.     (iconinfo (dest #Installname) (gettooltype "CONFIGFILE" "#Configfile"))
  85.     (if    (not (strlen #Configfile))
  86.         (
  87.         (F_GetDir #P_WConfig #H_WConfig #WhereMRQ)
  88.         (set #Configfile (tackon #Where "MRQ.config"))
  89.         )
  90.     )
  91. )
  92.  
  93. (procedure F_findimages
  94.     (set #WhereImages "")
  95.     (iconinfo (dest #Installname) (gettooltype "IMAGES" "#WhereImages"))
  96.     (if    (not (strlen #WhereImages))
  97.         (
  98.         (F_GetDir #P_WImages #H_WImages #WhereMRQ)
  99.         (set #WhereImages (tackon #Where "MRQ-images"))
  100.         )
  101.     )
  102. )
  103.  
  104. (procedure F_copyconfig
  105.     (F_expertmsg (cat #M_CopyingConfig #Configfile))
  106.     (copyfiles
  107.         (source #cfgsrc)
  108.         (dest (pathonly #Configfile))
  109.         (newname "MRQ.config")
  110.         (optional askuser)
  111.     )
  112. )
  113.  
  114. (procedure F_copymrq icon
  115.     (if icon
  116.         (
  117.             (F_expertmsg (cat #M_CopyingMRQ #M_CopyingMRQIcon #M_To #WhereMRQ))
  118.             (copyfiles (source "MRQ") (infos) (dest #WhereMRQ) (optional askuser))
  119.         )
  120.         (
  121.             (F_expertmsg (cat #M_CopyingMRQ #M_To #WhereMRQ #M_KeepingMRQIcon))
  122.             (copyfiles (source "MRQ") (dest #WhereMRQ) (optional askuser))
  123.         )
  124.     )
  125. )
  126.  
  127.  
  128. (procedure F_InstallNImcc
  129.     (copylib (prompt #M_InstallNImcc) (help #H_InstallNImcc) (source "MUI/Libs/NewImage.mcc") (dest "MUI:libs/MUI") (confirm) (optional askuser))
  130. )
  131.  
  132. (procedure F_ConfigMRQ
  133.     (if (not #WhereImages) (F_findimages))
  134.     (set #CfgOpts1
  135.         (askoptions
  136.             (prompt #P_ConfigOpts1)
  137.             (choices "pCENTERTEXT" "FRONTSCREEN" "MOUSEREQ" "NORTPATCH" "SAMEWIDTH" "SINGLEFRAME" "SIZEABLE" "TRANSPARENCY" "DEFAULTICON" "SINGLE IS OK" "DEBUG")
  138.             (help #H_ConfigOpts1)
  139.             (default 912)
  140.         )
  141.     )
  142.     (set #CfgOpts2
  143.         (askoptions
  144.             (prompt #P_IButtons)
  145.             (help #H_IButtons)
  146.             (choices #C_UseIMB1 #C_UseIMB2)
  147.             (default 3)
  148.         )
  149.     )
  150.     (if (in #CfgOpts2 0 1)
  151.         (
  152.             (set #IButtonSet
  153.                 (askchoice
  154.                     (prompt #P_IButtonSet)
  155.                     (help #H_IButtonSet)
  156.                     (choices #C_SelectIBSet1 #C_SelectIBSet2 #C_SelectIBSet3)
  157.                     (default 0)
  158.                 )
  159.             )
  160.             (if (= #IButtonSet 0)
  161.                 (
  162.                     (set #IButton_Yes (tackon #WhereImages "MRQwin_Yes.brush"))
  163.                     (set #IButton_No (tackon #WhereImages "MRQwin_No.brush"))
  164.                     (set #IButton_Cancel (tackon #WhereImages "MRQwin_Cancel.brush"))
  165.                 )
  166.                 (if (= #IButtonSet 1)
  167.                     (
  168.                         (set #IButton_Yes (tackon #WhereImages "MRQ_Yes.brush"))
  169.                         (set #IButton_No (tackon #WhereImages "MRQ_No.brush"))
  170.                         (set #IButton_Cancel (tackon #WhereImages "MRQ_Cancel.brush"))
  171.                     )
  172.                     (
  173.                         (set #IButton_Yes
  174.                             (askfile(prompt (#P_AskCustomIB #W_Yes))    (help #H_AskCustomIB)    (default #WhereImages))
  175.                         )
  176.                         (set #IButton_No
  177.                             (askfile(prompt (#P_AskCustomIB #W_No))    (help #H_AskCustomIB)    (default #WhereImages))
  178.                         )
  179.                         (set #IButton_Cancel
  180.                             (askfile(prompt (#P_AskCustomIB #W_Cancel))    (help #H_AskCustomIB)    (default #WhereImages))
  181.                         )
  182.                     )
  183.                 )
  184.             )
  185.             (if (in #CfgOpts2 1)
  186.                 (set #IButtonsByTextStr
  187.                     (cat
  188.                         (askstring
  189.                             (prompt (#P_IBBT #W_Yes))
  190.                             (help #H_IBBT)
  191.                             (default #IBBTDefaultString_Yes)
  192.                         ) ","
  193.                         (askstring
  194.                             (prompt (#P_IBBT #W_No))
  195.                             (help #H_IBBT)
  196.                             (default #IBBTDefaultString_No)
  197.                         ) ","
  198.                         (askstring
  199.                             (prompt (#P_IBBT #W_Cancel))
  200.                             (help #H_IBBT)
  201.                             (default #IBBTDefaultString_Cancel)
  202.                         )
  203.                     )
  204.                 )
  205.             )
  206.         )
  207.     )
  208.     (set #ImageQuality
  209.         (select
  210.             (askchoice
  211.                 (prompt #P_ImageQuality)
  212.                 (help #H_ImageQuality)
  213.                 (choices #C_ImageQuality1 #C_ImageQuality2 #C_ImageQuality3 #C_ImageQuality4)
  214.                 (default 2)
  215.             )
  216.             "low" "medium" "high" "best"
  217.         )
  218.     )
  219.  
  220.     (set #UseAfterPatch 
  221.         (askbool
  222.             (prompt #P_UseAfterPatch)
  223.             (help #H_AfterPatch)
  224.             (choices #W_Yes #W_No)
  225.             (default 0)
  226.         )
  227.     )
  228.     (if #UseAfterPatch
  229.         (set #AfterPatch
  230.             (askfile
  231.                 (prompt #P_AfterPatch)
  232.                 (help #H_AfterPatch)
  233.                 (default "AssignWedge")
  234.             )
  235.         )
  236.         (set #AfterPatch "")
  237.     )
  238.  
  239.     (set #loop 1)
  240.     (set #AvoidTasks "ramlib")
  241.     (while #loop
  242.         (set #AvoidTasksS
  243.             (askstring
  244.                 (prompt (cat #P_AvoidTasks "\"" #AvoidTasks "\""))
  245.                 (help #H_AvoidTasks)
  246.             )
  247.         )
  248.         (if (or (patmatch "# " #AvoidTasksS) (= #AvoidTasksS ""))
  249.             (set #loop 0)
  250.             (set #AvoidTasks (cat #AvoidTasks (if #AvoidTasks "|" "") #AvoidTasksS))
  251.         )
  252.     )
  253.  
  254.     (F_SetTooltypes)
  255. )
  256.  
  257. (procedure F_SetTooltypes
  258.     (working #M_SettingAllTT)
  259.  
  260.     (F_Booltype "CENTERTEXT"        (in #CfgOpts1 0))
  261.   (F_Booltype "FRONTSCREEN"        (in #CfgOpts1 1))
  262.     (F_Booltype "MOUSEREQ"            (in #CfgOpts1 2))
  263.     (F_Booltype "NORTPATCH"            (in #CfgOpts1 3))
  264.     (F_Booltype "SAMEWIDTH"            (in #CfgOpts1 4))
  265.     (F_Booltype "SINGLEFRAME"        (in #CfgOpts1 5))
  266.     (F_Booltype "SIZEABLE"            (in #CfgOpts1 6))
  267.     (F_Booltype "TRANSPARENCY"    (in #CfgOpts1 7))
  268.     (F_Booltype "DEFAULTICON"        (in #CfgOpts1 8))
  269.     (F_Booltype "SINGLE_IS_OK"    (in #CfgOpts1 9))
  270.     (F_Booltype "DEBUG"                    (in #CfgOpts1 10))
  271.  
  272.     (F_SetTT "QUALITY" #ImageQuality)
  273.  
  274.     (F_ProcessTT "AFTERPATCH" #AfterPatch #UseAfterPatch)
  275.  
  276.     (F_ProcessTT "AVOIDTASKS" #AvoidTasks #AvoidTasks)
  277.  
  278.     (if (in #CfgOpts2 0 1)
  279.         (
  280.             (F_SetTT "IMG_YES" #IButton_Yes)
  281.             (F_SetTT "IMG_NO" #IButton_No)
  282.             (F_SetTT "IMG_CANCEL" #IButton_Cancel)
  283.  
  284.             (F_ProcessTT "IBUTTONSBYTEXT" #IButtonsByTextStr (in #CfgOpts2 1))
  285.         )
  286.         (
  287.             (working #W_Unsetting #W_IBTT)
  288.             (F_RemTT "IMG_YES")
  289.             (F_RemTT "IMG_NO")
  290.             (F_RemTT "IMG_CANCEL")
  291.             (F_RemTT "IBUTTONSBYTEXT")
  292.         )
  293.     )
  294. )
  295.  
  296.  
  297. (procedure F_Booltype _name _onoff
  298.     (F_ProcessTT _name "1" _onoff)
  299. )
  300.  
  301. (procedure F_ProcessTT _name _value _onoff
  302.     (if _onoff
  303.         (F_SetTT _name _value)
  304.         (F_RemTT _name)
  305.     )
  306. )
  307.  
  308. (procedure F_SetTT _name _value
  309.     (F_expertworking (cat #W_Setting #W_Tooltype ":\n" _name))
  310.     (tooltype (dest #Installname) (settooltype _name _value))
  311. ;    (F_delay)
  312. )
  313.  
  314. (procedure F_RemTT _name
  315.     (F_expertworking (cat #W_Unsetting #W_Tooltype ":\n" _name))
  316.     (tooltype (dest #Installname) (settooltype _name))
  317. ;    (F_delay)
  318. )
  319.  
  320.  
  321.  
  322. (procedure F_InstallMRQ
  323.     (F_GetDir #P_WInstall #H_WInstall "SYS:wbstartup")
  324.     (set #WhereMRQ #Where)
  325.     
  326.     (set @@default-dest #WhereMRQ)
  327.     (set #Installname (tackon #WhereMRQ "MRQ"))
  328.     
  329.     (set #Oldversion (getversion #Installname))
  330.     (set #MRQVersion (getversion "MRQ"))
  331.     (set #OldVer (/ #Oldversion 65536))
  332.     (set #OldRev (- #Oldversion (* #OldVer 65536)))
  333.     (set #MRQVer (/ #MRQVersion 65536))
  334.     (set #MRQRev (- #MRQVersion (* #MRQVer 65536)))
  335.     (set #OldExists (or #OldVer #OldRev))
  336.     
  337.     (message (cat
  338.         (cat #M_VersionToInstall #MRQVer "." #MRQRev "\n\n")
  339.         (if #OldExists
  340.             (cat #M_InstalledVersion #OldVer "." #OldRev)
  341.             (#M_NoInstalledVer)
  342.         ))
  343.     )
  344.     
  345.     (F_findconfig)
  346.     (F_findimages)
  347.     
  348.     (set #CopyCfg
  349.         (if (exists #Configfile)
  350.             (askbool
  351.                 (prompt (cat #P_CopyCfg1 #Configfile #P_CopyCfg2))
  352.                 (help #H_CopyCfg)
  353.             )
  354.             1
  355.         )
  356.     )
  357.     
  358.     (if (exists #WhereImages)
  359.         (set #CheckNewImgs 
  360.             (askbool
  361.                 (prompt (cat #P_CheckImageDir #WhereImages " ?"))
  362.                 (help #H_CheckImageDir)
  363.                 (choices #C_CheckNewImgs1    #C_CheckNewImgs2)
  364.             )
  365.         )
  366.     )
  367.     
  368.     (complete 10)
  369.     
  370.     (working "Copying the MRQ executable")
  371.     (if #OldExists
  372.         (F_copymrq 0)
  373.         (
  374.             (F_copymrq 1)
  375.             (tooltype (dest #Installname) (settooltype "CONFIGFILE" #Configfile))
  376.             (tooltype (dest #Installname) (settooltype "IMAGES" #WhereImages))
  377.         )
  378.     )
  379.     
  380.     (complete 30)
  381.     
  382.     (if #CopyCfg (F_copyconfig))
  383.     
  384.     (complete 50)
  385.     
  386.     (if #CheckNewImgs
  387.         (
  388.             (foreach "MRQ-images" "#?.(ilbm|iff|brush|jpeg)"
  389.                 (
  390.                     (if    (not (exists (tackon #WhereImages @@each-name)))
  391.                         (if (not (> @@each-type 0))
  392.                             (
  393.                                 (F_expertmsg (cat #M_Copying1Img @@each-name))
  394.                                 (copyfiles (source (tackon "MRQ-images" @@each-name)) (dest #WhereImages) (optional askuser))
  395.                             ) 
  396.                         )
  397.                     )
  398.                 )
  399.             )
  400.             (F_expertmsg #M_ImgDirUp2D)
  401.         )
  402.         (if (not #OldExists)
  403.             (
  404.                 (F_expertmsg (cat #M_CopyingAllImages #WhereImages))
  405.                 (foreach "MRQ-images" "#?.(ilbm|iff|brush|jpeg)"
  406.                         (if (not (> @@each-type 0))
  407.                             (copyfiles (source (tackon "MRQ-images" @@each-name)) (dest #WhereImages) (optional askuser))
  408.                         )
  409.                 )
  410.             )
  411.         )
  412.     )
  413.     
  414.     (complete 70)
  415.     (F_InstallNImcc)
  416.     
  417.     (complete 80)
  418.     (if
  419.         (askbool
  420.             (prompt #P_ConfigureMRQ)
  421.             (help #H_PConfigureMRQ)
  422.         )
  423.         (F_ConfigMRQ)
  424.     )
  425.     
  426.     (complete 100)
  427. )
  428.  
  429.  
  430.  
  431.  
  432.  
  433. ;************** START **************
  434. (if (< @@installer-version 2752524) (abort "This script requires Installer V42.12 or greater!"))
  435.  
  436. ; !4 NOVICEs
  437. (if (= @@user-level 0) (set @@user-level 1))
  438.  
  439. ;no english-only config available yet
  440. (if (= @@language "english") (set #cfgsrc "MRQ.config") (set #cfgsrc "MRQ.config"))
  441.  
  442.  
  443. ;************** initialize variables **************
  444. (if (= @@language "deutsch")
  445.     (
  446.     (set #W_Yes "Ja")
  447.     (set #W_No "Nein")
  448.     (set #W_Cancel "Abbruch")
  449.     (set #W_Install "Installieren")
  450.     (set #W_Configure "Konfigurieren")
  451.     (set #W_Setting "Setze ")
  452.     (set #W_Unsetting "Lösche ")
  453.     (set #M_Welcome "\n\nWillkommen zum Installationsprogramm für\n\nMRQ\n\nThe MUI requester improver")
  454.     (set #P_InstOrCfg "Was wollen Sie machen?")
  455.     (set #H_InstOrCfg (cat "\"" #W_Install "\" installiert MRQ komplett neu oder aktualisiert "
  456.     "eine vorhandene Version, danach kann das Programm konfiguriert werden\n\"" #W_Configure
  457.     "\" ändert nur die Tooltypes eines bereits installierten MRQ, ohne andere Dateien zu"
  458.     " verändern\n"))
  459.     (set #E_Need020 "MRQ braucht mindestens einen 68020-Prozessor!")
  460.     (set #P_WInstall "Wo soll MRQ installiert werden?")
  461.     (set #H_WInstall "Das eigentliche Programm wird in dieses Verzeichnis kopiert. Wenn MRQ beim Booten automatisch gestartet werden soll, übernehmen Sie einfach das voreingestellte Verzeichnis")
  462.     (set #P_WImages "Wohin sollen die Bilder kopiert werden?\n(ein Verzeichnis wird angelegt)")
  463.     (set #H_WImages "Der Installer wird ein Unterverzeichnis namens\n\"MRQ-Images\"\nim ausgewählten Verzeichnis anlegen und dorthin alle Bilder kopieren")
  464.     (set #P_WConfig "Wohin soll die Konfigurationsdatei kopiert werden?")
  465.     (set #H_WConfig "Eine kleine Datei namens \"MRQ.config\" wird in dieses Verzeichnis kopiert")
  466.     (set #M_NoInstalledVer "Bisher ist keine Version installiert")
  467.     (set #M_CopyingConfig "Kopiere Konfigurationsdatei nach ")
  468.     (set #M_CopyingMRQ "Kopiere MRQ ")
  469.     (set #M_To "nach ")
  470.     (set #M_CopyingMRQIcon "und sein Piktogramm ")
  471.     (set #M_KeepingMRQIcon "\n(das alte Piktogramm wird nicht überschrieben)")
  472.     (set #M_VersionToInstall "\n\nZu installierende Version: V")
  473.     (set #M_InstalledVersion "Bisher installierte Version: V")
  474.     (set #P_CopyCfg1 "Konfigurationsdatei ")
  475.     (set #P_CopyCfg2 " existiert schon.\nMit neuer Konfiguration überschreiben?")
  476.     (set #H_CopyCfg "Geben Sie an, ob Sie ihre alte Konfigurationsdatei mit der neuen aus dieser Distribution überschreiben wollen oder nicht")
  477.     (set #C_CheckNewImgs1 "Neue Bilder kopieren")
  478.     (set #C_CheckNewImgs2 "Nichts kopieren")
  479.     (set #P_CheckImageDir "\n\nSoll die Distribution auf neue Bilder überprüft werden?\nNeue Bilder würden installiert nach ")
  480.     (set #H_CheckImageDir (cat
  481.     "Wenn Sie \"" #C_CheckNewImgs1 "\" auswählen, überprüft der Installer, ob in der Distribution "
  482.     "neue Bilder enthalten sind, die noch nicht in ihrem Bilderverzeichnis installiert sind. "
  483.     "Sollte er welche finden, werden sie dorthin kopiert.\n\n\"" #C_CheckNewImgs2
  484.     "\" beläßt das Bilderverzeichnis genauso wie es jetzt ist."))
  485.     (set #M_CopyingAllImages "Kopiere alle Bilder nach ")
  486.     (set #M_Copying1Img "Kopiere Bild: ")
  487.     (set #M_ImgDirUp2D "Bilderverzeichnis ist auf dem aktuellen Stand!")
  488.     (set #P_ConfigureMRQ "Wollen Sie MRQ jetzt konfigurieren?")
  489.     (set #H_PConfigureMRQ "Sie können MRQs Grundparameter jetzt konfigurieren, indem Sie menügeführt einige Tooltypes setzen.")
  490.     (set #P_ConfigOpts1 "Allgemeine Optionen")
  491.     (set #H_ConfigOpts1 (cat
  492.     "Die Bedeutung der Optionen im einzelnen:\n\n"
  493.     "CENTERTEXT  : Alle Texte im Requester zentrieren (sonst nur bei einzeiligen Requestern)\n\n" 
  494.     "FRONTSCREEN: Requester immer auf dem vordersten Bildschirm öffnen (Hack!)\n\n"
  495.     "MOUSEREQ: Requester an der Mausposition statt zentriert auf dem Bildschirm öffnen\n\n"
  496.     "NORTPATCH: reqtools.library nicht patchen\n\n"
  497.     "SAMEWIDTH: Alle Knöpfe gleich breit darstellen (sieht besser aus)\n\n"
  498.     "SINGLEFRAME: Einen Rahmen um Bild und Text legen statt beide getrennt einzurahmen (Geschmackssache)\n\n"
  499.     "SIZEABLE: Requester mit Größengadget versehen (nicht empfehlenswert)\n\n"
  500.     "TRANSPARENCY: MUIs Pattern oder Hintergrundfarbe durchscheinen lassen, wo in Bildern Hintergrundfarbe (Nummer 0) vorkommt\n\n"
  501.     "DEFAULTICON: Wenn der Requestertext auf kein vorkonfiguriertes Muster paßt, kann MRQ das Icon des aufrufenden Programms (falls vorhanden) anzeigen, wenn diese Option gesetzt.\n\n"
  502.     "SINGLE_IS_OK: Wenn diese Option angschaltet ist, bekommen Requester mit nur einem Knopf grundsätzlich das \"OK\"-Image, auch wenn der Text auf ein anderes Muster passen würde\n\n"
  503.     "DEBUG: Debug-Konsole aufmachen. Nur zur Fehlersuche sinnvoll!\n\n"
  504.     ))
  505.     (set #P_IButtons "Imagebutton-Optionen")
  506.     (set #H_IButtons "Bitte lesen Sie die Anleitung für nähere Informationen zu den Imagebuttons!") 
  507.   (set #C_UseIMB1 "pKnöpfe mit Sybolen verwenden")
  508.     (set #C_UseIMB2 "Symbole nach Text auswählen")
  509.     (set #P_IButtonSet "Bitte wählen Sie ein Set Knöpfe aus")
  510.     (set #H_IButtonSet "Die zwei mitgelieferten Sets:\n\nM$ Windows-artig\nZiemlich groß, sehen ab Auflösungen von 800x600 gut aus\n\nKlein\nWie der Name sagt, ein kleineres Set für kleinere Auflösungen")
  511.     (set #C_SelectIBSet1 "pM$ Windoofs")
  512.     (set #C_SelectIBSet2 "Klein")
  513.     (set #C_SelectIBSet3 "Eigene (Bilder selbst auswählen)")
  514.     (set #P_AskCustomIB "Bitte ein Bild auswählen für \"%s\"")
  515.     (set #H_AskCustomIB "Wählen Sie hier ein Bild aus. Es darf jedes Format haben, für das Sie einen Datatype installiert haben")
  516.     (set #P_IBBT "Bitte geben Sie die Wörter für \"%s\" ein")
  517.     (set #H_IBBT (cat "Das entsprechende Bild wird auf den Imagebutton gelegt, wenn eins der"
  518.     "angegebenen Wörter auf dem Knopf gefunden wird.\nDas Format ist: beliebig viele Wörter (Groß-"
  519.     "/Kleinschreibung unwichtig), getrennt mit senkrechten Strichen/\"Pipes\" ('|')"))
  520.     (set #P_ImageQuality "Mit welcher Qualität sollen die Bilder auf den Bildschirm angepaßt werden?\n(Bei vielen freien Farben ist \"Low\" völlig ausreichend!)")
  521.     (set #H_ImageQuality (cat
  522.     "Diese Einstellung beeinflußt sowohl die Genauigkeit, mit der die \"Zeichenstifte\" für das Bild vom "
  523.     "System angefordert werden als auch den Dithermodus. \"Low\" dithert überhaupt nicht, was auch ein Vorteil sein kann!"))
  524.     (set #C_ImageQuality1 "pNiedrig")
  525.     (set #C_ImageQuality2 "Mittel")
  526.     (set #C_ImageQuality3 "Hoch")
  527.     (set #C_ImageQuality4 "Beste")
  528.     (set #P_UseAfterPatch "Soll nach dem Installieren der Patches ein weiteres Programm gestartet werden (z.B. AssignWedge)?")
  529.     (set #P_AfterPatch "Bitte das Programm auswählen!")
  530.     (set #H_AfterPatch (cat "Da MRQ die \"gepatchten\" Funktionen im Betriebssystem nicht nur "
  531.     "verbessert, sondern komplett ersetzt, funktionieren andere Programme evtl. nicht mehr "
  532.     "korrekt, die dieselben Funktionen bereits gepatcht haben.\nUm so etwas zu vermeiden, kann "
  533.     "MRQ ein Programm (oder Shellscript) starten, nachdem alle Patches installiert sind."))
  534.     (set #P_AvoidTasks "Bitte Namen von Tasks eingeben, die MRQ nicht benutzen sollen\n(leerer String zum Beenden)\nBisher: ")
  535.     (set #H_AvoidTasks (cat "Sollte MRQ mit irgendwelchen Programmen nicht richtig funktionieren, "
  536.     "können Sie ihn hiermit für bestimmte Tasks deaktivieren.\nBitte die Namen einzeln eingeben - "
  537.     "der Installer generiert automatisch das entsprechende Tooltype. AmigaDOS-Muster im Namen sind "
  538.     "erlaubt."))
  539.     (set #P_WInstalled "Wo ist MRQ auf ihrem System installiert?")
  540.     (set #H_WInstalled "Sie müssen MRQ installiert haben, bevor Sie es konfigurieren können. Wählen Sie nur das Verzeichnis aus, das Pogramm darin muß \"MRQ\" heißen und ein Piktogramm haben")
  541.     (set #E_CantFindMRQ "In diesem Verzeichnis ist kein Programm namens \"MRQ\"!")
  542.     (set #W_IBTT "Imagebutton-Tooltypes")
  543.     (set #W_IBBT "IBUTTONSBYTEXT")
  544.     (set #W_Tooltype "Tooltype")
  545.     (set #IBBTDefaultString_Yes "yes|ok|delete|retry|ja|sim")
  546.     (set #IBBTDefaultString_No "no|nein|não")
  547.     (set #IBBTDefaultString_Cancel "cancel|abort|abbr")
  548.     (set #M_SettingAllTT "Setze die Tooltypes")
  549.     (set #M_InstallNImcc "Installiere NewImage.mcc")
  550.     (set #H_InstallNImcc "NewImage.mcc ist eine MUI-Klasse, die zur Darstellung der Bilder unbedingt benötigt wird.")
  551.     )
  552. ; English texts
  553.     (
  554.     (set #W_Yes "Yes")
  555.     (set #W_No "No")
  556.     (set #W_Cancel "Cancel")
  557.     (set #W_Install "Install")
  558.     (set #W_Configure "Configure")
  559.     (set #W_Setting "Setting ")
  560.     (set #W_Unsetting "Deleting ")
  561.     (set #M_Welcome "\n\nWelcome to\n\nMRQ\n\nThe MUI requester improver")
  562.     (set #P_InstOrCfg "What do you want to do?")
  563.     (set #H_InstOrCfg (cat "\"" #W_Install "\" installs or upgrades MRQ and lets you configure "
  564.     "it afterwards.\n\"" #W_Configure "\" only changes MRQ's tooltypes without modifying any "
  565.     "other files\n"))
  566.     (set #E_Need020 "MRQ requires at least a 68020 CPU!")
  567.     (set #P_WInstall "Where do you want MRQ to be installed?")
  568.     (set #H_WInstall "The MRQ executable will be copied to this directory. If you want MRQ to start automatically on bootup, just accept the default.")
  569.     (set #P_WImages "Where do you want the images to be copied?\n(a directory will be created)")
  570.     (set #H_WImages "The installer will create a directory called\n\"MRQ-Images\"\ninside the directory you select and copy all images there")
  571.     (set #P_WConfig "Where do you want to keep the config file?\n")
  572.     (set #H_WConfig "A small file called \"MRQ.config\" will be copied to this directory")
  573.     (set #M_NoInstalledVer "There is no previously installed version")
  574.     (set #M_CopyingConfig "Copying config file as ")
  575.     (set #M_CopyingMRQ "Copying MRQ ")
  576.     (set #M_To "to ")
  577.     (set #M_CopyingMRQIcon "and its icon ")
  578.     (set #M_KeepingMRQIcon "\n(old icon will not be overwritten)")
  579.     (set #M_VersionToInstall "\n\nVersion to install: V")
  580.     (set #M_InstalledVersion "Version already installed: V")
  581.     (set #P_CopyCfg1 "Config file ")
  582.     (set #P_CopyCfg2 " already exists\nCopy new config anyway?")
  583.     (set #H_CopyCfg "Select whether you want to overwrite your old config with the new one or not")
  584.     (set #C_CheckNewImgs1 "Copy new images")
  585.     (set #C_CheckNewImgs2 "Don't copy anything")
  586.     (set #P_CheckImageDir "\n\nShould the distribution be checked for any new images that are not yet installed in ")
  587.     (set #H_CheckImageDir (cat
  588.     "If you select \"" #C_CheckNewImgs1 "\", installer will check for files in the distribution's MRQ-images "
  589.     "directory that you don't have in your image directory yet and copy them if it finds any.\n\n\""
  590.     #C_CheckNewImgs2 "\" leaves your image directory as it is."))
  591.     (set #M_CopyingAllImages "Copying all images to ")
  592.     (set #M_Copying1Img "Copying image: ")
  593.     (set #M_ImgDirUp2D "Image directory is up to date!")
  594.     (set #P_ConfigureMRQ "Do you want to configure MRQ now?")
  595.     (set #H_PConfigureMRQ "You may configure MRQ's basic behavior by setting some tooltypes now")
  596.     (set #P_ConfigOpts1 "General options")
  597.     (set #H_ConfigOpts1 (cat
  598.     "Here's the meaning of the individual options:\n\n"
  599.     "CENTERTEXT  : Center all text displayed in a requester\n\n" 
  600.     "FRONTSCREEN: Open requesters on frontmost screen (hack!)\n\n"
  601.     "MOUSEREQ: Open requesters at the mouseposition instead of centered on the screen\n\n"
  602.     "NORTPATCH: Do not patch reqtools.library\n\n"
  603.     "SAMEWIDTH: Make all buttons the same width (looks nicer)\n\n"
  604.     "SINGLEFRAME: Put a single frame around image and text instead of one around each\n\n"
  605.     "SIZEABLE: Make requesters sizeable (not recommended)\n\n"
  606.     "TRANSPARENCY: Let MUI's image background shine through where images have background color (#0)\n\n"
  607.     "DEFAULTICON: If the requester text matches none of the pre-configured patterns, MRQ can instead show the calling program's icon (given it exists), if this option is set.\n\n"
  608.     "SINGLE_IS_OK: If this switch is on, requesters with a single button will always get the \"OK\"-image, even when the button's text would match the pattern for a different one.\n\n"
  609.     "DEBUG: Open the debug-console. Only makes sense for tracking down errors!\n\n"
  610.     ))
  611.     (set #P_IButtons "Imagebutton options")
  612.     (set #H_IButtons "See the guide file for detailed info on the imagbutton options!") 
  613.   (set #C_UseIMB1 "pUse imagebuttons")
  614.     (set #C_UseIMB2 "Select by buttontext")
  615.     (set #P_IButtonSet "Select the set of buttons to use")
  616.     (set #H_IButtonSet "The two included button sets:\n\nM$ Windoze style\nQuite big, looks good on 800x600 and up\n\nSmall\nAs it says, a smaller set for lower resolutions")
  617.     (set #C_SelectIBSet1 "pM$ Windoze")
  618.     (set #C_SelectIBSet2 "Small")
  619.     (set #C_SelectIBSet3 "Custom (select images yourself)")
  620.     (set #P_AskCustomIB "Select an image for \"%s\"")
  621.     (set #H_AskCustomIB "Select an image file. This can be in any format you have a datatype for")
  622.     (set #P_IBBT "Select an imagebutton matchtext for \"%s\"")
  623.     (set #H_IBBT "The format of string is:\nAny number of words you want to match on, separated by pipe characters ('|')")
  624.     (set #P_ImageQuality "Select an image quality\n(with lots of free pens, \"low\" should be just fine!)")
  625.     (set #H_ImageQuality (cat
  626.     "This determines both the precision with which to allocate pens for the picture from the system and "
  627.     "the dither mode. If dithering makes images look bad on your"
  628.     "system, try \"Low\"."))
  629.     (set #C_ImageQuality1 "pLow")
  630.     (set #C_ImageQuality2 "Medium")
  631.     (set #C_ImageQuality3 "High")
  632.     (set #C_ImageQuality4 "Best")
  633.     (set #P_UseAfterPatch "Should another program (like AssignWedge) be started by MRQ after it has patched the OS?")
  634.     (set #P_AfterPatch "Please select the program!")
  635.     (set #H_AfterPatch (cat "For MRQ not only improves \"patched\" functions but completely "
  636.     "replaces them, other programs that happen to have patched the same functions are likely "
  637.     " not to work correctly with MRQ installed.\nTo get around this problem, MRQ can start one "
  638.     "such program (or shellscript) after it has applied its patches"))
  639.     (set #P_AvoidTasks "Please enter names of tasks that should not use MRQ, one at a time.\nEnter an empty string to quit\nCurrent pattern: ")
  640.     (set #H_AvoidTasks (cat "If MRQ should cause problems with some programs, you can deactivate "
  641.     "it here for certain tasks. Please enter them one at a time, the installer will automatically "
  642.     "generate the correct tooltype.\nYou may use AmigaDOS patterns here."))
  643.     (set #P_WInstalled "Where is MRQ installed on your system?")
  644.     (set #H_WInstalled "You need to have MRQ installed before you can configure it. Select only the directory, the executable must be called \"MRQ\" and have an icon")
  645.     (set #E_CantFindMRQ "There is no file called \"MRQ\" in this directory!")
  646.     (set #W_IBTT "imagebutton tooltypes")
  647.     (set #W_IBBT "IBUTTONSBYTEXT")
  648.     (set #W_Tooltype "tooltype")
  649.     (set #IBBTDefaultString_Yes "yes|ok|delete|retry")
  650.     (set #IBBTDefaultString_No "no")
  651.     (set #IBBTDefaultString_Cancel "cancel|abort")
  652.     (set #M_SettingAllTT "Setting tooltypes")
  653.     (set #M_InstallNImcc "Installing NewImage.mcc")
  654.     (set #H_InstallNImcc "NewImage.mcc is a MUI-class which is required for MRQ to render its images.")
  655.     )
  656. )    
  657.  
  658.  
  659. ;************** work starts **************
  660. (message #M_Welcome)
  661. (welcome)
  662.  
  663. (set #CPU (database "cpu"))
  664. (if (< #CPU 68020) (abort #E_Need020))
  665.  
  666. (if
  667.     (askchoice
  668.         (prompt #P_InstOrCfg)
  669.         (help #H_InstOrCfg)
  670.         (choices (cat "p" #W_Install) #W_Configure)
  671.         (default 0)
  672.     )
  673.     (
  674.         (F_GetDir #P_WInstalled #H_WInstalled "SYS:wbstartup")
  675.         (set #WhereMRQ #Where)
  676.         (set @@default-dest #WhereMRQ)
  677.         (set #Installname (tackon #WhereMRQ "MRQ"))
  678.         (if (exists #Installname)
  679.             (
  680.                 (set #WhereImages 0)
  681.                 (F_ConfigMRQ)
  682.             )
  683.             (message #E_CantFindMRQ)
  684.         )
  685.     )
  686.     (F_InstallMRQ)
  687. )
  688. @
  689.  
  690.  
  691. 1.1
  692. log
  693. @Initial revision
  694. @
  695. text
  696. @d3 1
  697. a3 1
  698. ;* $VER: MRQ_Install 2.4 (21-Jan-00)                        *
  699. d10 5
  700. a14 1
  701. ; $Id:$
  702. a15 2
  703. ; $Log:$
  704.  
  705. d105 1
  706. a105 1
  707.             (choices "pCENTERTEXT" "FRONTSCREEN" "MOUSEREQ" "NORTPATCH" "SAMEWIDTH" "SINGLEFRAME" "SIZEABLE" "TRANSPARENCY" "DEFAULTICON" "DEBUG")
  708. d107 1
  709. a107 1
  710.             (default 272)
  711. d204 1
  712. d208 1
  713. d237 2
  714. a238 1
  715.     (F_Booltype "DEBUG"                    (in #CfgOpts1 9))
  716. d422 1
  717. a422 1
  718.     (set #P_InstOrCfg "Was wollen sie machen?")
  719. d429 1
  720. a429 1
  721.     (set #H_WInstall "Das eigentliche Programm wird in dieses Verzeichnis kopiert.Wenn MRQ beim Booten automatisch gestartet werden soll, übernehmen sie einfach das voreingestellte Verzeichnis")
  722. d444 1
  723. a444 1
  724.     (set #H_CopyCfg "Geben sie an, ob sie ihre alte Konfigurationsdatei mit der neuen aus dieser Distribution überschreiben wollen oder nicht")
  725. d449 1
  726. a449 1
  727.     "Wenn sie \"" #C_CheckNewImgs1 "\" auswählen, überprüft der Installer, ob in der Distribution "
  728. d456 2
  729. a457 2
  730.     (set #P_ConfigureMRQ "Wollen sie MRQ jetzt konfigurieren?")
  731.     (set #H_PConfigureMRQ "Sie können MRQs Grundparameter jetzt konfigurieren, indem sie menügeführt einige Tooltypes setzen.")
  732. d470 1
  733. d474 1
  734. a474 1
  735.     (set #H_IButtons "Bitte lesen sie die Anleitung für nähere Informationen zu den Imagebuttons!") 
  736. d477 1
  737. a477 1
  738.     (set #P_IButtonSet "Bitte wählen sie ein Set Knöpfe aus")
  739. d483 2
  740. a484 2
  741.     (set #H_AskCustomIB "Wählen sie hier ein Bild aus. Es darf jedes Format haben, für das sie einen datatype installiert haben")
  742.     (set #P_IBBT "Bitte geben  sie die Wörter für \"%s\" ein")
  743. d504 2
  744. a505 2
  745.     "können sie ihn hiermit für bestimmte Tasks deaktivieren.\nBitte die Namen einzeln eingeben - "
  746.     "der Installer generiert automatisch as entsprechende Tooltype. AmigaDOS-Patterns im Namen sind "
  747. d508 1
  748. a508 1
  749.     (set #H_WInstalled "Sie müssen MRQ installiert haben, bevor sie es konfigurieren können. Wählen sie nur das Verzeichnis aus, das Pogramm darin muß \"MRQ\" heißen und ein Piktogramm haben")
  750. d513 2
  751. a514 2
  752.     (set #IBBTDefaultString_Yes "yes|ok|delete|retry|nochmal|ja")
  753.     (set #IBBTDefaultString_No "no|nein")
  754. d576 1
  755. d647 4
  756. a650 1
  757.             (F_ConfigMRQ)
  758. @
  759.